package com.tao.auto.batchtao.home;

import com.tao.auto.batchtao.base.BaseFlow;
import com.tao.auto.batchtao.base.ParamContext;
import com.tao.auto.batchtao.home.account.HomeAccount;

/**
 * @author GLNC-taowenchen
 */
public abstract class AbstractHomeLoginBaseFlow implements BaseFlow {
    @Override
    public void doSomething(String userName) {
        //获取账号信息
        ParamContext<HomeAccount> phone = getAccount();
        ParamContext<String> login = login(phone);
        //获取验证码
        qiandao(login,phone);

    }

    protected abstract void qiandao(ParamContext<String> login,ParamContext<HomeAccount> phone);

    protected abstract ParamContext<String> login(ParamContext<HomeAccount> phone);

    protected abstract ParamContext<HomeAccount> getAccount();

}
